package com.chaodev.base.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Map;

/**
 * 微信发送模板消息参数实体类
 *
 * @author zhao zu yun
 * @version 1.0
 * @since 2023/3/8 9:20
 */
@Data
@ApiModel
public class MessageParam {

/*
    touser	是	接收者openid
    template_id	是	模板ID
    url	否	模板跳转链接（海外帐号没有跳转能力）
    miniprogram	否	跳小程序所需数据，不需跳小程序可不用传该数据
    appid	是	所需跳转到的小程序appid（该小程序 appid 必须与发模板消息的公众号是绑定关联关系，暂不支持小游戏）
    pagepath	否	所需跳转到小程序的具体页面路径，支持带参数,（示例index?foo=bar），要求该小程序已发布，暂不支持小游戏
    data	是	模板数据
    color	否	模板内容字体颜色，不填默认为黑色
    client_msg_id	否	防重入id。对于同一个openid + client_msg_id, 只发送一条消息,10分钟有效,超过10分钟不保证效果。若无防重入需求，可不填
 */
    @ApiModelProperty(value = "接受者openid",example = "oxhesjsjdfhf9838eh",required = true)
    private String touser;

    @ApiModelProperty(value = "模板id",example = "jddjdjddhfjw8",required = true)
    private String template_id;

    @ApiModelProperty(value = "跳转小程序所需数据",notes = "不需跳小程序可不用传该数据",allowEmptyValue = true)
    private Miniprogram miniprogram;

    @ApiModelProperty(value = "模板跳转链接",notes = "海外帐号没有跳转能力",allowEmptyValue = true)
    private String url;

    @ApiModelProperty(value = "防重入id",allowEmptyValue = true,notes = "对于同一个openid + client_msg_id, 只发送一条消息,10分钟有效,超过10分钟不保证效果。若无防重入需求，可不填")
    private String client_msg_id;

    @ApiModelProperty(value = "模板数据",example = "{\"tittle\": {\n" +
            "          \"value\": \"下班提醒\",\n" +
            "          \"color\": \"#EC1B34\"\n" +
            "      }}",required = true)
    private Map<String,MessageData> data;






}

